设置openwrt软路由,通过ipv6外网访问家中电脑nas等设备系列教程 |
您所在的位置:网站首页 › ros openwrt ipv6 › 设置openwrt软路由,通过ipv6外网访问家中电脑nas等设备系列教程 |
教程开始之前,先思考两个问题:没有公网怎么办? 解答:目前移动、联通、电信这三家运营商,以云南地区为例,三家都已经实现 百分之百 IPV6 公网,电信有 ipv4 公网,联通部分有 ipv4 公网,移动没有 ipv4 公网。 如何查看自己有没有公网请自行百度。 确定有公网,但是只能内网访问。解答:把光猫改成桥接模式,进行路由器拨号,修改方式记住自己光猫相关参数,按照下图进行修改(记得替换相关值)。 教程正式开始路由器拨号上网准备一个已经刷好 openwrt 的软路由,以 K3 为例,按照下图方式连接光猫的 LAN 与路由器的 WAN 即可,如果有多级可继续以相同方式进行串联。启动路由器,输入 192.168.2.1(一级路由)登陆管理界面,依次网络——接口——WAN——修改(如图所示)协议选择 PPPOE ,之后填入宽带账号密码,其他默认不用修改即可完成设置上网。路由器开启 IPV6如果有 IPV4 公网那直接申请域名做动态域名解析和端口转发即可。 openwort 设置 ipv6 比较繁琐 需要先按照下图配置方式完成设置。 在接口处根据需求选择已有接口或者新建接口,删除 IPV6 前缀 保存。选择需要设置的 IPV6 接口——高级设置——地址选择自动。网络——DHCP/DNS——高级设置静止解析去掉——保存应用。网络 ——防火墙如图 2345 设置保存应用。最后一步网络——负载均衡——策略——改成默认保存即可。打开网站 http://www.test-ipv6.com/如图所示显示说明已经正确获取到公网 IPV6。此时路由器下的所有设备已经获取获取到 IPV6 真实地址,通过电脑指令 ping 已经能够正常联通。外网设置 IPV6这是最后一步也是最难设置的一步,开始之前需要详细了解 IPV6 的构成和原理。 使用无状态的 eui64 地址, 它的后缀是不变的。内网设备的 ipv6 地址,前半部分是 ipv6 前缀,是运营商分配的。重拨后会变化。后半部分,如果不是 eui64,就是随机生成的,也会变。如果是 eui64,则与 mac 地址相关,不会变化,除非换网卡。如果整个 ipv6 都会变,防火墙规则就没办法写了。除非全网放行(内网目标地址掩码填 ::/0 或 any)。或关闭防火墙。(本次教程是 eui64)所以配置内网设备的 ipv6 地址为 eui64,防火墙的内网目标地址掩码填 ::xxxx:xxxx:xxxx:xxxx/::FFFF:FFFF:FFFF:FFFF, 这样就比较安全了。(ipv6 地址掩码比 v4 灵活,v6 可以掩前面,也可以掩后面。v4 就只能掩前面)还有一个 ipv6 地址可以使用(有状态地址),即 dhcpdv6 分配的地址。每台客户机都会自己提供一个 DUID,且不会变,分配的 ipv6 后缀也就不变,相对固定。(结论:不能指定。) 在 openwrt 中 Network->DHCP and DNS->Static Leases(静态地址) 中,(openwrt 不支持直接指定新的 ipv6 后缀/或指定 DUID。除非客户机自己没有提供 DUID)添加一条记录,指定 MAC-Address,指定 IPv6-Suffix(格式为四个 hex 数,如 AABB),这个办法不能指定 ipv6 后缀。 添加一条记录,指定 MAC-Address,指定 DUID,重启客户机。看看拿到什么 IP。这个办法也不能指定 DUID,不能得到新 ipv6 后缀。 修改客户机的 DUID ,看 [Linux ipv6 无状态 设置为 eui64] 中 “有状态 ipv6”部分。指定新的 DUID,就有一个新的固定的 IPv6 后缀。 确定客户机的 ipv6 后缀之后。比如 2408:ebcd:ebcd:ebcd::789, 那么防火墙规则中的目标地址写 ::789/::ffff:ffff:ffff:ffff比如: 你的 ipv6 地址为,2408:ebcd:ebcd:ebcd:5678:5678:5678:5678则目标地址掩码填, 0:0:0:0:5678:5678:5678:5678/0:0:0:0:FFFF:FFFF:FFFF:FFFF连续的 0 简写为两个冒号,即,::5678:5678:5678:5678/::FFFF:FFFF:FFFF:FFFF在接口——防火墙——流量规则——新增 forward 规则如图所示填写 协议族选择 ipv6 only协议按需 TCP, UDP, TCP/UDP ...Source zone 选 WAN(包含 wan6)Destination Zone(目标区域),选择 Any zone(forward) 或者 lan目标端口,按需填写。多个端口用空格隔开。这个图片中的设置,本质上就是添加了多条 forward 规则(tcp/udp/一个端口,各一条)(openwrt-18.06)。 如果选 Any zone(forward)ip6tables -A FORWARD -i pppoe-wan -d ::5678:5678:5678/::ffff:ffff:ffff:ffff -p tcp -m tcp --dport 443 -j ACCEPTip6tables -A FORWARD -i pppoe-wan -d ::5678:5678:5678/::ffff:ffff:ffff:ffff -p udp -m udp --dport 443 -j ACCEPT如果选 lanip6tables -A FORWARD -i pppoe-wan -o br-lan -d ::5678:5678:5678/::ffff:ffff:ffff:ffff -p tcp -m tcp --dport 443 -j ACCEPTDevice (input) 不是用来开放内网机器访问的。是用来开放路由器本身的端口访问, 这时候 Destination address(目标地址)要留空,或写路由器自己的 IP。ip6tables -A INPUT -i pppoe-wan -p tcp -m tcp --dport 443 -j ACCEPT另外,现在的运营商已经封禁 80,443 两个端口(ipv4 和 ipv6)。所以这两个端口开放了也用不了。其他端口可以用。防火墙中的默认规则 drop/rejectNetwork -> Firewall -> General Settings 中:* General Settings 的 Forward 默认规则改为 drop, 影响从外网访问内网 lan,不开放的 ipv6 地址和端口。修改的是 iptables/ip6tables 的 filter->FORWARD 的最后一条-A FORWARD -j DROP Zones 的 WAN => [--] 的 Input 默认规则改为 drop,影响从外网访问路由器本身的 wan(ipv4/6),lan(ipv6)地址,不开放的端口。不影响端口映射。修改的是 iptables/ip6tables 的 filter->INPUT 的最后一条-A INPUT -i pppoe-wan -j DROP,-A INPUT -i vwan1 -j DROPZones 的 WAN => [--] 的 Forward 默认规则改为 drop,影响从外网访问非 lan(包括 wan,未设置为 lan 的其他接口),不开放的地址和端口。修改的是 iptables/ip6tables 的 filter->FORWARD 的倒数第二条-A FORWARD -i pppoe-wan -j zone_wan_dest_DROP,-A FORWARD -i vwan1 -j zone_wan_dest_DROP,-A zone_wan_dest_DROP -o pppoe-wan -j DROP,-A zone_wan_dest_DROP -o vwan1 -j DROP具体参考图片 点击保存应用。 现在设备已经整个暴露在互联网状态下,通过设置域名解析即可通过网址访问访问此设置。 ipv6 已经是公网地址,无需 nat 转换/端口映射,只需转发即可。 教程到此结束,因为 IPV6 和 IPV4 一样,地址每天都会重置,且不一样,为了省去手动解析的不必要麻烦,以路由器下的 NAS 威联通为例,通过阿里云的 DDNS 自动解析设备地址到域名方便快捷,教程请点击这里 → 《威联通设置阿里云动态解析进行外网 IPV6 访问家中 NAS》 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |